import java.util.ArrayList;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 * @author marcel
 */
public class Vendedor {
// Atributos
    private String nome;
    private ArrayList<Viagem> viagens = new ArrayList();


    public Vendedor(String nome){
        this.setNome(nome);
    }

    // Métodos
    public void setNome(String str) {
        if (str == null || str.equals("")) {
            throw new IllegalArgumentException("Nome do vendedor inválido");
        }
        this.nome = str;
    }

    public String getNome() {
        return this.nome;
    }

    public void addViagem(Viagem v){
        viagens.add(v);
    }

    public float getValorAPagar() {
        int km = this.getTotalKm();
        float valorKM = 0;

        if (km < 150) {
            valorKM = 0.4f;
        } else if (km < 601) {
            valorKM = 0.38f;
        } else {
            valorKM = 0.35f;
        }

        return (km * valorKM);
    }

    public float getTotalVendas(){
        float total = 0;
        for (Viagem v:viagens){
            total += v.getValorVendas();
        }
        return total;

    }

    public int getTotalKm(){
        int total = 0;
        for (Viagem v:viagens){
            total += v.getKM();
        }
        return total;
    }

    public Viagem getMenorViagem() {
        Viagem menor = null;
        for (Viagem v:viagens){
            if (menor == null
                || menor.getKM() > v.getKM()){
                menor = v;
            }
        }
        return menor;
    }

    public String toString(){
        return this.nome;
    }

    public String mostrarDados(){
        return this.nome+" receberá R$ "+this.getValorAPagar();
    }
}
